package com.ls.pattern.factory.abs.pay.abroad;

import com.ls.pattern.factory.abs.pay.common.IBalance;
import com.ls.pattern.factory.abs.pay.common.IPay;
import com.ls.pattern.factory.abs.pay.common.IPaymentFactory;
import com.ls.pattern.factory.abs.pay.common.IRefund;

/**
 * @author 挥之以墨
 */
public class CrossBorderPayFactory implements IPaymentFactory {

    public static CrossBorderPayFactory getInstance() {
        return new CrossBorderPayFactory();
    }

    @Override
    public IPay createPay() {
        init();
        return new CrossBorderPayPay();
    }

    @Override
    public IRefund createRefund() {
        init();
        return new CrossBorderPayRefund();
    }

    @Override
    public IBalance createBalance() {
        init();
        return new CrossBorderPayBalanceQuery();
    }
}
